home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 011 / adikit.arc / DSTEST.LSP < prev    next >
Lisp/Scheme  |  1986-12-01  |  5KB  |  161 lines

  1.  
  2.  
  3. (defun wait (s)
  4. ; waits s milleseconds
  5.        (command "delay" (setq z s))
  6. )
  7. (defun graphwait ()
  8. ; goes to graphics screen and waits 1/4 second
  9.        (graphscr)
  10.        (wait 250)
  11. )
  12. (defun starttest (s)
  13. ; tell the user something, and wait for his RETURN. 
  14. ; i.e., print the statement s, tell them to Hit RETURN when ready
  15. ;  then go to graphics and wait 1/4 second
  16. ;
  17. ;  !!!! save the starting prompt in the test file?
  18. ;  !!!! number the tests for restart purposes
  19. ;  
  20.        (if (= "N" comnd) (textscr))
  21.        (print s)
  22.        (print "Hit RETURN when ready to proceed")
  23.        (getstring T)
  24.        (graphwait)
  25.        (repeat 3 (print "  "))
  26. )
  27. (defun getrslt (q)
  28. ; wait a little for the user to look at the result...then
  29. ; ask the user question q and do something with his answer
  30. ; always ask from the text screen...so we don't have problems with
  31. ; command prompt area off or dual screens with only one line cmmnd prompts
  32. ; also save the result in the test result file
  33. ; and only accept Y y or N n   ask again if not
  34. ;       
  35.        (wait wtime)
  36.        (if (= comnd "N")
  37.            (command "textscr"))
  38.        (setq z " ")
  39.        (while (and (/= z "Y") (/= z "N"))
  40.           (terpri)
  41.           (setq z (strcase (getstring q)))
  42.        )
  43.        (if (null testf) (terpri)
  44.          (progn
  45.          (write-line q testf)
  46.          (if (= "Y" z)
  47.              (write-line  " PASS" testf)
  48.              (write-line  " FAIL" testf))
  49.          (write-line "    " testf)
  50.          ))
  51. )
  52.  
  53. (defun slowpick  ()
  54. ; returns "l" after awhile
  55.        (repeat 800 (setq x "l"))
  56. )
  57. (defun userpick ()
  58.        (terpri)
  59.        (command "erase") (getstring t "Move the pick box, hit RETURN")
  60.        (command)  
  61. )
  62. (defun dssetup ()
  63.        (setvar "cmdecho" 1)
  64.        (textscr) 
  65.        ; run dscfg to update ascii.cfg file for status, prompt, menu config
  66.        (command "shell" "dscfg")
  67.        (setvar "cmdecho" 0)
  68.        (setvar "blipmode" 0)
  69.        (setq cfgf (open "ascii.cfg" "r"))
  70.        (setq disp (read-line cfgf))
  71.        (setq cfg (read-line cfgf))
  72.        (setq sfgf (close cfgf))
  73.        (setq status (substr cfg 1 1))
  74.        (setq comnd (substr cfg 3 1))
  75.        (setq menu (substr cfg 5 1))
  76.        (terpri)
  77.        (print disp)    
  78.        (print "                             ")
  79.        (print (strcat "Status line    " status))
  80.        (print (strcat "Command prompt " comnd))
  81.        (print (strcat "Menu area      " menu))
  82.        (print "                             ")
  83.        (setq x 0)
  84.        (setq disp8 "")
  85.        (repeat 8 (if (= " " (substr disp (setq x (1+ x)) 1))
  86.                      (setq disp8 (strcat disp8 "-"))
  87.                      (setq disp8 (strcat disp8 (substr disp x 1))))
  88.        )
  89.        (setq disp8 (strcase disp8 T))
  90. )
  91. (defun getver ()
  92.        (setq midf (open "acad4.mid" "r"))
  93.        (if (null midf) (setq ver "")
  94.        (progn
  95.        (setq x "  ")
  96.          (while (and (/= "VERSION" x) (/= nil x))
  97.                (setq x (strcase (substr (setq ver (read-line midf)) 1 7)))
  98.          )
  99.        ))
  100. )
  101. (defun startestout (testfn)
  102.         (if (/= nil testf)
  103.             (setq testf (close testf)))
  104.  
  105.         (setq testf (open testfn "w"))
  106.  
  107.         (write-line disp testf)
  108.         (getver)
  109.         (if (/= "" ver)
  110.             (write-line ver testf))
  111.         (write-line "      " testf)
  112.         (write-line (strcat "Status line " status) testf)
  113.         (write-line (strcat "Command prompt " comnd) testf)
  114.         (write-line (strcat "Menu area " menu) testf)
  115.         (write-line "      " testf)
  116.         (write-line (rtos (getvar "cdate") 2) testf)
  117.         (write-line "      " testf)
  118.  
  119.         (print (strcat "Output test result file: " testfn))
  120. )
  121.  
  122. (defun C:SINGLE () 
  123.        (load "single")
  124. )
  125. (defun C:DUAL ()
  126.        (load "dual")
  127. )
  128. (defun C:COLORS ()
  129.        (load "colors") 
  130. )
  131. (defun C:NCFG ()
  132. ; figure out current yyy cfg and change it to the next
  133.        (setq cfglist (list
  134.                      '(yyy "Y Y N")
  135.                      '(yyn "Y N Y")
  136.                      '(yny "Y N N")
  137.                      '(ynn "N Y Y")
  138.                      '(nyy "N Y N")
  139.                      '(nyn "N N Y")
  140.                      '(nny "N N N")
  141.                      '(nnn "Y Y Y")
  142.                           ))
  143.        (if (or (null status) (null comnd) (null menu))
  144.            (dssetup) 
  145.            (progn
  146.             (textscr)
  147.             (terpri)
  148.             (print (strcat "Current status, command, menu: " status " " comnd " " menu))
  149.             (wait 2000)
  150.            ))
  151.        (setq x (read (strcat status comnd menu)))
  152.        (setq nxtcfg (assoc x cfglist))
  153.        (setq nxtcfg (car (cdr nxtcfg)))
  154.        (print (strcat "Change status, command, menu to " nxtcfg))
  155.        (command "shell" (strcat "dscfg " nxtcfg))
  156.        (command "script" "outin")
  157. )
  158.  
  159.